package com.epin.dms.api;

import java.util.Date;
import java.util.List;

import com.epin.dms.vo.Charge;
import com.epin.dms.vo.ChargeName;
import com.epin.dms.vo.ChequeVo;
import com.epin.dms.vo.CurrencyVo;
import com.epin.dms.vo.PaymentVo;
import com.epin.dms.vo.ReceivablesListVo;
/**
 * 基础参数(生产者)
 * @author DELL
 *
 */
public interface DmsService {

	
	//费用名称
	List<ChargeName> getChargeNameList(String companyCode,String keyName);
	
	
	
	
	//费用名称(excle检验 cn)
	List<ChargeName> getExcleChargeNameList(String companyCode,String expenseName);
	
	
	
	//modify:guojian
	String uploadCharges(List<Charge> charges);
	
	
	//币别管理
	List<CurrencyVo> queryCurrencyList(String companyCode,String keyName);
	
	//币别管理(code---excle)
	List<CurrencyVo> queryCurrencyEnList(String companyCode,String currencyCode);
	//币别管理(name---excle)
	List<CurrencyVo> queryCurrencyCnList(String companyCode,String currencyName);
	
	 //付款对象管理
	List<PaymentVo> queryPayment(String companyCode,String keyName);
	 //付款对象管理(name---excle)
	List<PaymentVo> queryExclePayment(String companyCode,String payName);
	
	//支票(用户和编码)
	List<ChequeVo> queryCheque(String companyCode,String userName,String keyName);
	
	//支票(excle)---银行帐号+支票号---检验唯一
	List<ChequeVo> queryExcleCheque(String companyCode,String userName,String keyName,String bankCode);
	
	//同步审核
	public void synchronousAuditExpense(String billCode,String companyCode,String ids,String platformAuditName,Date platformAuditTime);
	
	//删除
	public void synchronDelExpenseDetail(String ids,String companyCode,String billCode);
	
	//退回(scp)
	public void synchronCancelExpenseDetail(String ids);
	
	//同步收款清单
	public boolean synchronReceivablesList(ReceivablesListVo vo);
	
	//费用明细根据companyCode和receivablesListNo来修改receivablesListNo
	public int updateReceivablesListNo(String companyCode,String receivablesListNo,String receivablesListNoNew);
	
	//费用明细根据ids来修改receivablesListNo
	public int updateReceivablesListNoByIds(List<String> ids,String receivablesListNo);
	
	
}
